The present invention relates an improvement a method for producing a program for functional test of a semiconductor device (hereinafter referred to as "test program").
In general, when a function of a semiconductor device is to be tested, the semiconductor device is operated in accordance with contents of a test program, thereby to determine whether it outputs expected data or not. From the result of output, whether the semiconductor device is good or not is judged. However, since a semiconductor device has various types of functions, testing of all functions requires one to prepare a test program for respective ones of the functions and then to execute the test programs in a predetermined order. The functional tests of a semiconductor device are, for example, a test of a read only memory (ROM), a test of a random access memory (RAM), a test of an operation, etc.
A method of making a conventional test program will be elucidated in detail referring to FIG. 18.
FIG. 18 shows an configuration of a conventional test program for testing a semiconductor device. The test program includes a pattern program (not shown) and test items. The pattern program includes combination of an input signal and an output signal which is an expected value. The input signal and the output signal are both in configured. The test items are a test item A, a test item B, a test item C, - - - . The test items are each a combination of a plurality of test statements for executing a functional test of a semiconductor device. A user makes the test items by combining the test statements. When a group of test items which contain the plurality of test statements are combined with the pattern program, functional tests of the semiconductor device can be executed.
The functions of the semiconductor device are tested in accordance with the contents of the test programs and whether the semiconductor device is good or not is judged. Hence, if a user will make a test item using a wrong test statement, the functional test of the semiconductor device will fail, and therefore, a wrong judgement will be made if the semiconductor device is good.
In addition, there are some cases where that an unnecessary test statement is executed during testing of the functions of the semiconductor device. For example, even when a statement regarding level condition setting is the same both for the test items A and for C but a level condition setting statement for the test item B is different, the level condition setting statement is executed three times. Such multiple time executions are problematic, since such multiple time executions extend time for the functional tests of the semiconductor device.